package com.tbsoft.ehr.dao.staffFile;

import java.util.List;

import com.tbsoft.ehr.dao.BaseDao;
import com.tbsoft.ehr.model.ServiceCustomer;
import com.tbsoft.ehr.model.StaffInfo;

public interface StaffFileDao extends BaseDao<StaffInfo>{

	List<StaffInfo> getAllStaffInfo();
	List<StaffInfo> getStaffInfoByCondton(StaffInfo staff,String entryDateFrom,String entryDateTo,int startIndex,int count);
	StaffInfo getStaffInfoById(String id);
	List<StaffInfo> getStaffFileByStaffName(String name);
	
	/**
	 * 设置离职
	 * @param si
	 */
	void updateWorkStatus(StaffInfo si);
	
	void updateAuditStatus(String staffId );
	int getStaffFileCount(StaffInfo staff,String entryDateFrom, String entryDateTo);
	
	/**
	 * 部门被逻辑删除时调用此方法修改档案部门为null
	 * @param deptId
	 * @return
	 */
	int updateDepartment(String deptId);
	
	/**
	 * 服务客户被逻辑删除时调用此方法修改档案服务客户为null
	 * @param scId
	 * @return
	 */
	int updateServiceCustomer(String scId);
	
	/**
	 * 工作调派时修改服务客户
	 * @param staffId
	 * @param sc
	 */
	void changeServiceCustomer(String staffId,ServiceCustomer sc);
	
	StaffInfo getStaffInfoByUserId(String userId);
}
